package com.abewy.android.apps.klyph.core;
import android.annotation.TargetApi;
import android.app.Application;
import android.util.Log;
import com.crashlytics.android.Crashlytics;
public abstract class BaseApplication extends Application
{
private static BaseApplication instance;
@Override
public void onCreate()
{
instance = this;
initGlobals();
initBugReport();
initPreferences();
initAds();
initOthers();
super.onCreate();
}
public static BaseApplication getInstance()
{
return instance;
}
private void initBugReport()
{
if (KlyphFlags.ENABLE_BUG_REPORT)
{
Crashlytics.start(this);
}
}
protected abstract void initPreferences();
protected abstract void initGlobals();
protected abstract void initAds();
protected abstract void initOthers();
public abstract void onLogout();
@Override
public void onLowMemory()
{
super.onLowMemory();
Log.i("BaseApplication", "onLowMemory");
}
@Override
@TargetApi(14)
public void onTrimMemory(int level)
{
super.onTrimMemory(level);
Log.i("BaseApplication", "onTrimMemory");
}
}